package com.seednia.foundation.framework.dto;

import java.util.Date;

/**
 * Interface for all the criteria classes
 * The criteria is used to pass query criteria to the Data Access Objects to 
 * retrieve records
 * 
 * @author Young Suk Ahn
 *
 */
public interface ICriteria {

	/**
	 * The Sid of the record
	 * @return
	 */
	Long getSid();
	
	void setSid(Long sid);
	
	/**
	 * The creator of the record
	 * @return
	 */
	Long getCreatorSid();
		
	/**
	 * The date the record is created before this
	 * @return
	 */
	Date getCreatedBefore();

	/**
	 * The date the record is created after this
	 * @return
	 */
	Date getCreatedAfter();
	
	/**
	 * Sets all the fields that the search will be applied to the provided value
	 * E.g. the single search field will be used to search.
	 * @param value
	 */
	void setSearchText(String value);

}
